home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / CIncludes / GXFonts.h < prev    next >
C/C++ Source or Header  |  1996-05-01  |  8KB  |  210 lines

  1. /*
  2.      File:        GXFonts.h
  3.  
  4.      Contains:    QuickDraw GX font routine interfaces.
  5.  
  6.      Version:    Technology:    Quickdraw GX 1.1
  7.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  8.  
  9.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10.  
  11.      Bugs?:        If you find a problem with this file, send the file and version
  12.                  information (from above) and the problem description to:
  13.  
  14.                      Internet:    apple.bugs@applelink.apple.com
  15.                      AppleLink:    APPLE.BUGS
  16.  
  17. */
  18. #ifndef __GXFONTS__
  19. #define __GXFONTS__
  20.  
  21. #ifndef __CONDITIONALMACROS__
  22. #include <ConditionalMacros.h>
  23. #endif
  24. #ifndef __GXMATH__
  25. #include <GXMath.h>
  26. #endif
  27. #ifndef __GXTYPES__
  28. #include <GXTypes.h>
  29. #endif
  30. #ifndef __SCALERSTREAMTYPES__
  31. #include <ScalerStreamTypes.h>
  32. #endif
  33.  
  34. #ifdef __cplusplus
  35. extern "C" {
  36. #endif
  37.  
  38. #if PRAGMA_IMPORT_SUPPORTED
  39. #pragma import on
  40. #endif
  41.  
  42. #if PRAGMA_ALIGN_SUPPORTED
  43. #pragma options align=mac68k
  44. #endif
  45.  
  46. #if defined(__MWERKS__) && GENERATING68K
  47.     #pragma push
  48.     #pragma pointers_in_D0
  49. #endif
  50.  
  51. #if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
  52. extern gxFont GXNewFont(gxFontStorageTag storage, gxFontStorageReference reference, gxFontAttribute attributes)
  53.  THREEWORDINLINE(0x303C, 0x0201, 0xA832);
  54.  
  55. extern gxFontStorageTag GXGetFont(gxFont fontID, gxFontStorageReference *reference, gxFontAttribute *attributes)
  56.  THREEWORDINLINE(0x303C, 0x0202, 0xA832);
  57.  
  58. extern gxFont GXFindFont(gxFontStorageTag storage, gxFontStorageReference reference, gxFontAttribute *attributes)
  59.  THREEWORDINLINE(0x303C, 0x0203, 0xA832);
  60.  
  61. extern void GXSetFont(gxFont fontID, gxFontStorageTag storage, gxFontStorageReference reference, gxFontAttribute attributes)
  62.  THREEWORDINLINE(0x303C, 0x0204, 0xA832);
  63.  
  64. extern void GXDisposeFont(gxFont fontID)
  65.  THREEWORDINLINE(0x303C, 0x0205, 0xA832);
  66.  
  67. extern void GXChangedFont(gxFont fontID)
  68.  THREEWORDINLINE(0x303C, 0x0206, 0xA832);
  69.  
  70. extern gxFontFormatTag GXGetFontFormat(gxFont fontID)
  71.  THREEWORDINLINE(0x303C, 0x0207, 0xA832);
  72.  
  73. extern gxFont GXGetDefaultFont(void )
  74.  THREEWORDINLINE(0x303C, 0x0208, 0xA832);
  75.  
  76. extern gxFont GXSetDefaultFont(gxFont fontID)
  77.  THREEWORDINLINE(0x303C, 0x0209, 0xA832);
  78.  
  79. extern long GXFindFonts(gxFont familyID, gxFontName name, gxFontPlatform platform, gxFontScript script, gxFontLanguage language, long length, const unsigned char text[], long index, long count, gxFont fonts[])
  80.  THREEWORDINLINE(0x303C, 0x020A, 0xA832);
  81.  
  82. extern long GXCountFontGlyphs(gxFont fontID)
  83.  THREEWORDINLINE(0x303C, 0x020B, 0xA832);
  84.  
  85. extern long GXCountFontTables(gxFont fontID)
  86.  THREEWORDINLINE(0x303C, 0x020C, 0xA832);
  87.  
  88. extern long GXGetFontTable(gxFont fontID, long index, void *tableData, gxFontTableTag *tableTag)
  89.  THREEWORDINLINE(0x303C, 0x020D, 0xA832);
  90.  
  91. extern long GXFindFontTable(gxFont fontID, gxFontTableTag tableTag, void *tableData, long *index)
  92.  THREEWORDINLINE(0x303C, 0x020E, 0xA832);
  93.  
  94. extern long GXGetFontTableParts(gxFont fontID, long index, long offset, long length, void *tableData, gxFontTableTag *tableTag)
  95.  THREEWORDINLINE(0x303C, 0x020F, 0xA832);
  96.  
  97. extern long GXFindFontTableParts(gxFont fontID, gxFontTableTag tableTag, long offset, long length, void *tableData, long *index)
  98.  THREEWORDINLINE(0x303C, 0x0210, 0xA832);
  99.  
  100. extern long GXSetFontTable(gxFont fontID, long index, gxFontTableTag tableTag, long length, const void *tableData)
  101.  THREEWORDINLINE(0x303C, 0x0211, 0xA832);
  102.  
  103. extern long GXSetFontTableParts(gxFont fontID, long index, gxFontTableTag tableTag, long offset, long oldLength, long newLength, const void *tableData)
  104.  THREEWORDINLINE(0x303C, 0x0212, 0xA832);
  105.  
  106. extern long GXDeleteFontTable(gxFont fontID, long index, gxFontTableTag tableTag)
  107.  THREEWORDINLINE(0x303C, 0x0213, 0xA832);
  108.  
  109. extern long GXCountFontNames(gxFont fontID)
  110.  THREEWORDINLINE(0x303C, 0x0214, 0xA832);
  111.  
  112. extern long GXGetFontName(gxFont fontID, long index, gxFontName *name, gxFontPlatform *platform, gxFontScript *script, gxFontLanguage *language, unsigned char text[])
  113.  THREEWORDINLINE(0x303C, 0x0215, 0xA832);
  114.  
  115. extern long GXFindFontName(gxFont fontID, gxFontName name, gxFontPlatform platform, gxFontScript script, gxFontLanguage language, unsigned char text[], long *index)
  116.  THREEWORDINLINE(0x303C, 0x0216, 0xA832);
  117.  
  118. extern long GXSetFontName(gxFont fontID, gxFontName name, gxFontPlatform platform, gxFontScript script, gxFontLanguage language, long length, const unsigned char text[])
  119.  THREEWORDINLINE(0x303C, 0x0217, 0xA832);
  120.  
  121. extern long GXDeleteFontName(gxFont fontID, long index, gxFontName name, gxFontPlatform platform, gxFontScript script, gxFontLanguage language)
  122.  THREEWORDINLINE(0x303C, 0x0218, 0xA832);
  123.  
  124. extern gxFontName GXNewFontNameID(gxFont fontID)
  125.  THREEWORDINLINE(0x303C, 0x0219, 0xA832);
  126.  
  127. extern long GXCountFontEncodings(gxFont fontID)
  128.  THREEWORDINLINE(0x303C, 0x021A, 0xA832);
  129.  
  130. extern gxFontPlatform GXGetFontEncoding(gxFont fontID, long index, gxFontScript *script, gxFontLanguage *language)
  131.  THREEWORDINLINE(0x303C, 0x021B, 0xA832);
  132.  
  133. extern long GXFindFontEncoding(gxFont fontID, gxFontPlatform platform, gxFontScript script, gxFontLanguage language)
  134.  THREEWORDINLINE(0x303C, 0x021C, 0xA832);
  135.  
  136. extern long GXApplyFontEncoding(gxFont fontID, long index, long *length, const unsigned char text[], long count, unsigned short glyphs[], char was16Bit[])
  137.  THREEWORDINLINE(0x303C, 0x021D, 0xA832);
  138.  
  139. extern long GXCountFontVariations(gxFont fontID)
  140.  THREEWORDINLINE(0x303C, 0x021E, 0xA832);
  141.  
  142. extern long GXFindFontVariation(gxFont fontID, gxFontVariationTag variationTag, Fixed *minValue, Fixed *defaultValue, Fixed *maxValue, gxFontName *name)
  143.  THREEWORDINLINE(0x303C, 0x021F, 0xA832);
  144.  
  145. extern gxFontVariationTag GXGetFontVariation(gxFont fontID, long index, Fixed *minValue, Fixed *defaultValue, Fixed *maxValue, gxFontName *name)
  146.  THREEWORDINLINE(0x303C, 0x0220, 0xA832);
  147.  
  148. extern long GXCountFontInstances(gxFont fontID)
  149.  THREEWORDINLINE(0x303C, 0x0221, 0xA832);
  150.  
  151. extern gxFontName GXGetFontInstance(gxFont fontID, long index, gxFontVariation variation[])
  152.  THREEWORDINLINE(0x303C, 0x0222, 0xA832);
  153.  
  154. extern long GXSetFontInstance(gxFont fontID, long index, gxFontName name, const gxFontVariation variation[])
  155.  THREEWORDINLINE(0x303C, 0x0223, 0xA832);
  156.  
  157. extern long GXDeleteFontInstance(gxFont fontID, long index, gxFontName name)
  158.  THREEWORDINLINE(0x303C, 0x0224, 0xA832);
  159.  
  160. extern long GXCountFontDescriptors(gxFont fontID)
  161.  THREEWORDINLINE(0x303C, 0x0225, 0xA832);
  162.  
  163. extern gxFontDescriptorTag GXGetFontDescriptor(gxFont fontID, long index, Fixed *descriptorValue)
  164.  THREEWORDINLINE(0x303C, 0x0226, 0xA832);
  165.  
  166. extern long GXFindFontDescriptor(gxFont fontID, gxFontDescriptorTag descriptorTag, Fixed *descriptorValue)
  167.  THREEWORDINLINE(0x303C, 0x0227, 0xA832);
  168.  
  169. extern long GXSetFontDescriptor(gxFont fontID, long index, gxFontDescriptorTag descriptorTag, Fixed descriptorValue)
  170.  THREEWORDINLINE(0x303C, 0x0228, 0xA832);
  171.  
  172. extern long GXDeleteFontDescriptor(gxFont fontID, long index, gxFontDescriptorTag descriptorTag)
  173.  THREEWORDINLINE(0x303C, 0x0229, 0xA832);
  174.  
  175. extern long GXCountFontFeatures(gxFont fontID)
  176.  THREEWORDINLINE(0x303C, 0x022A, 0xA832);
  177.  
  178. extern gxFontName GXGetFontFeature(gxFont fontID, long index, gxFontFeatureFlag *flags, long *settingCount, gxFontFeatureSetting settings[], gxFontFeature *feature)
  179.  THREEWORDINLINE(0x303C, 0x022B, 0xA832);
  180.  
  181. extern gxFontName GXFindFontFeature(gxFont fontID, gxFontFeature feature, gxFontFeatureFlag *flags, long *settingCount, gxFontFeatureSetting settings[], long *index)
  182.  THREEWORDINLINE(0x303C, 0x022C, 0xA832);
  183.  
  184. extern long GXGetFontDefaultFeatures(gxFont fontID, gxRunFeature features[])
  185.  THREEWORDINLINE(0x303C, 0x0274, 0xA832);
  186.  
  187. extern void GXFlattenFont(gxFont source, scalerStream *stream, gxSpoolBlock *block)
  188.  THREEWORDINLINE(0x303C, 0x022D, 0xA832);
  189.  
  190. #endif
  191.  
  192. #if defined(__MWERKS__) && GENERATING68K
  193.     #pragma pop
  194. #endif
  195.  
  196. #if PRAGMA_ALIGN_SUPPORTED
  197. #pragma options align=reset
  198. #endif
  199.  
  200. #if PRAGMA_IMPORT_SUPPORTED
  201. #pragma import off
  202. #endif
  203.  
  204. #ifdef __cplusplus
  205. }
  206. #endif
  207.  
  208. #endif /* __GXFONTS__ */
  209.  
  210.